package com.hua.api.core.util;


/**
 * 脱敏二维卡
 */
public class WbBlur {

    public static String mapSting[] = { "3f", "2w", "6d", "f6", "5e", "8v", "6r", "5i", "3g", "1f", "ba", "bb", "bc", "bd", "be", "bf", "b1", "b2", "b3", "b4", "b5", "b6", "b7", "b8", "b9", "b0", "q1", "r1", "sk", "3t", "yu", "cv", "pw", "qx", "hy", "cz", "ty", "tu", "sa", "sb", "ss", "e2", "ve", "zr", "hr",
            "wo", "la", "e8", "3k", "0r", "4l", "3n", "5q", "9s", "v9", "6m", "6u", "3j", "y4", "6n", "ml", "z2" };

    public static char mapChar[] = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's',
            't', 'u', 'v', 'w', 'x', 'y', 'z' };

    // 这个是用来加密的
    public static String getEncryption(String str) {
        char[] ch = str.toCharArray();
        StringBuilder sb = new StringBuilder();
        for (int i = 0; i < str.length(); i++) {
            for (int j = 0; j < mapChar.length; j++) {
                if (ch[i] == mapChar[j]) {
                    sb.append(mapSting[j]);
                }
            }
        }
        return sb.toString();
    }

    // 这个是解密的
    public static String getDecryption(String str) {
        try{
            StringBuilder sb = new StringBuilder();
            for (int i = 0; i < str.length(); i += 2) {
                for (int j = 0; j < mapSting.length; j++) {
                    if (str.substring(i, i + 2).equals(mapSting[j])) {
                        sb.append(mapChar[j]);
                    }
                }
            }
            return sb.toString();
        }catch(Exception e){
            return null;
        }
    }

//    public static void main(String[] args){
////        String str = getEncryption("1293823");
////        System.out.println(str);
////        String dstr = getDecryption("256319f63863f6");
////        System.out.println(dstr);
//
//
//        List<String>  arrays = new ArrayList<>();
//
//        for(int i=0;i<20;i++){
//            arrays.add(String.valueOf(i));
//        }
//
//
//
//
//        for(String s:arrays.subList(20,arrays.size())){
//            System.out.println(s);
//        }
//
//
//    }
}
